home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / distribs / latex / doc / art10.doc < prev    next >
Text File  |  1992-03-18  |  14KB  |  348 lines

  1. % ARTICLE STANDARD DOCUMENT STYLE -- Released 14 Jan 1992
  2. %    for LaTeX version 2.09
  3. % Copyright (C) 1992 by Leslie Lamport
  4.  
  5. %  ****************************************
  6. %  *               FONTS                  *
  7. %  ****************************************
  8. %
  9.  
  10. \lineskip 1pt            % \lineskip is 1pt for all font sizes.
  11. \normallineskip 1pt
  12. \def\baselinestretch{1}
  13.  
  14. % Each size-changing command \SIZE executes the command
  15. %        \@setsize\SIZE{BASELINESKIP}\FONTSIZE\@FONTSIZE
  16. % where:
  17. %   BASELINESKIP = Normal value of \baselineskip for that size.
  18. %                  (Actual value will be
  19. %                   \baselinestretch * BASELINESKIP.)
  20. %
  21. %  \FONTSIZE     = Name of font-size command.  The currently available
  22. %                  (preloaded) font sizes are: \vpt (5pt), \vipt (6pt),
  23. %                  \viipt (etc.), \viiipt, \ixpt, \xpt, \xipt, \xiipt,
  24. %                  \xivpt, \xviipt, \xxpt, \xxvpt.
  25. %  \@FONTSIZE    = The same as the font-size command except with an
  26. %                  '@' in front---e.g., if \FONTSIZE = \xivpt then
  27. %                  \@FONTSIZE = \@xivpt.
  28. %
  29. % For reasons of efficiency that needn't concern the designer,
  30. % the document style defines \@normalsize instead of \normalsize.  This
  31. % is done only for \normalsize, not for any other size-changing
  32. % commands.
  33.  
  34. \def\@normalsize{\@setsize\normalsize{12pt}\xpt\@xpt
  35. \abovedisplayskip 10\p@ plus2\p@ minus5\p@
  36. \belowdisplayskip \abovedisplayskip
  37. \abovedisplayshortskip  \z@ plus3\p@   
  38. \belowdisplayshortskip  6\p@ plus3\p@ minus3\p@
  39. \let\@listi\@listI}   % Setting of \@listi added 9 Jun 87
  40.  
  41. \def\small{\@setsize\small{11pt}\ixpt\@ixpt
  42. \abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
  43. \belowdisplayskip \abovedisplayskip
  44. \abovedisplayshortskip \z@ plus2\p@
  45. \belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
  46. \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
  47. \topsep 4\p@ plus2\p@ minus2\p@\parsep 2\p@ plus\p@ minus\p@
  48. \itemsep \parsep}}
  49.  
  50. \def\footnotesize{\@setsize\footnotesize{9.5pt}\viiipt\@viiipt
  51. \abovedisplayskip 6\p@ plus2\p@ minus4\p@
  52. \belowdisplayskip \abovedisplayskip
  53. \abovedisplayshortskip \z@ plus\p@
  54. \belowdisplayshortskip 3\p@ plus\p@ minus2\p@
  55. \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
  56. \topsep 3\p@ plus\p@ minus\p@\parsep 2\p@ plus\p@ minus\p@
  57. \itemsep \parsep}}
  58.  
  59. \def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt}
  60. \def\tiny{\@setsize\tiny{6pt}\vpt\@vpt}
  61. \def\large{\@setsize\large{14pt}\xiipt\@xiipt}
  62. \def\Large{\@setsize\Large{18pt}\xivpt\@xivpt}
  63. \def\LARGE{\@setsize\LARGE{22pt}\xviipt\@xviipt}
  64. \def\huge{\@setsize\huge{25pt}\xxpt\@xxpt}
  65. \def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
  66.  
  67. \normalsize  % Choose the normalsize font.
  68.  
  69.  
  70. %  ****************************************
  71. %  *            PAGE LAYOUT               *
  72. %  ****************************************
  73. %
  74. % All margin dimensions measured from a point one inch from top and side
  75. % of page.  
  76.  
  77. % SIDE MARGINS:
  78. \if@twoside               % Values for two-sided printing:
  79.    \oddsidemargin  44pt   %   Left margin on odd-numbered pages.
  80.    \evensidemargin 82pt   %   Left margin on even-numbered pages.
  81.    \marginparwidth 107pt  %   Width of marginal notes.
  82. \else                     % Values for one-sided printing:
  83.    \oddsidemargin  63pt   %   Note that \oddsidemargin = \evensidemargin
  84.    \evensidemargin 63pt
  85.    \marginparwidth 90pt 
  86. \fi
  87. \marginparsep 11pt        % Horizontal space between outer margin and 
  88.                           % marginal note
  89.  
  90.  
  91. % VERTICAL SPACING:        
  92.                        % Top of page:
  93. \topmargin 27pt        %    Nominal distance from top of page to top of
  94.                        %    box containing running head.
  95. \headheight 12pt       %    Height of box containing running head.
  96. \headsep 25pt          %    Space between running head and text.
  97. \topskip = 10pt        %    '\baselineskip' for first line of page.
  98.                        % Bottom of page:
  99. \footskip 30pt         %    Distance from baseline of box containing
  100.                        %    foot to baseline of last line of text.
  101.  
  102.  
  103. % DIMENSION OF TEXT:
  104. % 24 Jun 86: changed to explicitly compute \textheight to avoid
  105. % roundoff.  The value of the multiplier was calculated as the floor of
  106. % the old \textheight minus \topskip, divided by \baselineskip for
  107. % \normalsize. The old value of \textheight was 528pt.
  108. % \textheight is the height of text (including footnotes and figures, 
  109. % excluding running head and foot).
  110.  
  111. \textheight = 43\baselineskip
  112. \advance\textheight by \topskip
  113. \textwidth 345pt         % Width of text line.
  114.                          % For two-column mode: 
  115. \columnsep 10pt          %    Space between columns 
  116. \columnseprule 0pt       %    Width of rule between columns.
  117.  
  118. % A \raggedbottom command causes 'ragged bottom' pages: pages set to
  119. % natural height instead of being stretched to exactly \textheight.
  120.  
  121. % FOOTNOTES:
  122.  
  123. \footnotesep 6.65pt   % Height of strut placed at the beginning of every
  124.                       % footnote = height of normal \footnotesize strut,
  125.                       % so no extra space between footnotes.
  126.  
  127. \skip\footins 9pt plus 4pt minus 2pt  % Space between last line of text
  128.                                       % and top of first footnote.
  129.  
  130. % FLOATS: (a float is something like a figure or table)
  131. %
  132. %  FOR FLOATS ON A TEXT PAGE:
  133. %
  134. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  135. \floatsep 12pt plus 2pt minus 2pt        % Space between adjacent floats
  136.                                          % moved to top or bottom of
  137.                                          % text page.
  138. \textfloatsep 20pt plus 2pt minus 4pt    % Space between main text and
  139.                                          % floats at top or bottom of
  140.                                          % page.
  141. \intextsep 12pt plus 2pt minus 2pt       % Space between in-text figures
  142.                                          % and text.
  143. \@maxsep 20pt                            % The maximum of \floatsep, 
  144.                                          % \textfloatsep and \intextsep
  145.                                          % (minus the stretch and
  146.                                          % shrink).
  147. %    TWO-COLUMN FLOATS IN TWO-COLUMN MODE:
  148. \dblfloatsep 12pt plus 2pt minus 2pt     % Same as \floatsep for
  149.                                          % double-column figures in
  150.                                          % two-column mode.
  151. \dbltextfloatsep 20pt plus 2pt minus 4pt % \textfloatsep for
  152.                                          % double-column  floats.
  153. \@dblmaxsep 20pt                         % The maximum of \dblfloatsep
  154.                                          % and \dbltexfloatsep.
  155.  
  156. %  FOR FLOATS ON A SEPARATE FLOAT PAGE OR COLUMN:
  157. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  158. \@fptop 0pt plus 1fil    % Stretch at top of float page/column. (Must
  159.                          % be 0pt plus ...)
  160. \@fpsep 8pt plus 2fil    % Space between floats on float page/column. 
  161. \@fpbot 0pt plus 1fil    % Stretch at bottom of float page/column. (Must
  162.                          % be 0pt plus ... )
  163.  
  164. %   DOUBLE-COLUMN FLOATS IN TWO-COLUMN MODE.
  165. \@dblfptop 0pt plus 1fil % Stretch at top of float page. (Must be 0pt
  166.                          % plus ...)
  167. \@dblfpsep 8pt plus 2fil % Space between floats on float page.
  168. \@dblfpbot 0pt plus 1fil % Stretch at bottom of float page. (Must be 
  169.                          % 0pt plus ... )
  170. % MARGINAL NOTES:
  171. %
  172. \marginparpush 5pt       % Minimum vertical separation between two
  173.                          % marginal notes.
  174.  
  175.  
  176. %  ****************************************
  177. %  *           PARAGRAPHING               *
  178. %  ****************************************
  179. %
  180. \parskip 0pt plus 1pt              % Extra vertical space between
  181.                                    % paragraphs.
  182. \parindent 15pt                    % Width of paragraph indentation.
  183. %\topsep 8pt plus 2pt minus 4pt    % Extra vertical space, in addition
  184.                                    % to \parskip, added above and below
  185.                                    % list and paragraphing environments.
  186. \partopsep 2pt plus 1pt minus 1pt  % Extra vertical space, in addition
  187.                                    % to \parskip and \topsep, added when
  188.                                    % user leaves blank line before
  189.                                    % environment.
  190. %\itemsep 4pt plus 2pt minus 1pt   % Extra vertical space, in addition
  191.                                    % to \parskip, added between list
  192.                                    % items.
  193. % See \@listI for values of \topsep and \itemsep
  194. % (Change made 9 Jun 87)
  195.  
  196. % The following page-breaking penalties are defined
  197.  
  198. \@lowpenalty   51      % Produced by \nopagebreak[1] or \nolinebreak[1]
  199. \@medpenalty  151      % Produced by \nopagebreak[2] or \nolinebreak[2]
  200. \@highpenalty 301      % Produced by \nopagebreak[3] or \nolinebreak[3]
  201.  
  202. \@beginparpenalty -\@lowpenalty    % Before a list or paragraph
  203.                                    % environment.
  204. \@endparpenalty   -\@lowpenalty    % After a list or paragraph
  205.                                    % environment.
  206. \@itempenalty     -\@lowpenalty    % Between list items.
  207.  
  208. % \clubpenalty         % 'Club line'  at bottom of page.
  209. % \widowpenalty        % 'Widow line' at top of page.
  210. % \displaywidowpenalty % Math display widow line.
  211. % \predisplaypenalty   % Breaking before a math display.
  212. % \postdisplaypenalty  % Breaking after a math display.
  213. % \interlinepenalty    % Breaking at a line within a paragraph.
  214. % \brokenpenalty       % Breaking after a hyphenated line.
  215.  
  216.  
  217. %    ****************************************
  218. %    *             SECTIONS                 *
  219. %    ****************************************
  220. %
  221. % FMi 91/03/30: \part moved to article.doc
  222. %
  223.  
  224. % \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE} 
  225. %            optional * [ALTHEADING]{HEADING}
  226. %    Generic command to start a section.  
  227. %    NAME       : e.g., 'subsection'
  228. %    LEVEL      : a number, denoting depth of section -- i.e.,
  229. %                 section=1, subsection = 2, etc.  A section number will
  230. %                 be printed if and only if LEVEL < or = the value of
  231. %                 the secnumdepth counter.
  232. %    INDENT     : Indentation of heading from left margin
  233. %    BEFORESKIP : Absolute value = skip to leave above the heading.  
  234. %                 If negative, then paragraph indent of text following 
  235. %                 heading is suppressed.
  236. %    AFTERSKIP  : if positive, then skip to leave below heading,
  237. %                       else - skip to leave to right of run-in heading.
  238. %    STYLE      : commands to set style
  239. %  If '*' missing, then increments the counter.  If it is present, then
  240. %  there should be no [ALTHEADING] argument.  A sectioning command
  241. %  is normally defined to \@startsection + its first six arguments.
  242.  
  243. \def\section{\@startsection {section}{1}{\z@}{-3.5ex plus-1ex minus
  244.     -.2ex}{2.3ex plus.2ex}{\reset@font\Large\bf}}
  245. \def\subsection{\@startsection{subsection}{2}{\z@}{-3.25ex plus-1ex
  246.     minus-.2ex}{1.5ex plus.2ex}{\reset@font\large\bf}}
  247. \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-3.25ex plus
  248.     -1ex minus-.2ex}{1.5ex plus.2ex}{\reset@font\normalsize\bf}}
  249. \def\paragraph{\@startsection
  250.      {paragraph}{4}{\z@}{3.25ex plus1ex minus.2ex}{-1em}{\reset@font
  251.      \normalsize\bf}}
  252. \def\subparagraph{\@startsection
  253.      {subparagraph}{4}{\parindent}{3.25ex plus1ex minus
  254.      .2ex}{-1em}{\reset@font\normalsize\bf}}
  255.  
  256.  
  257. % Default initializations of \...mark commands.  (See below for their
  258. % use in defining page styles.
  259. %
  260.  
  261. % \def\sectionmark#1{}           % Preloaded definitions
  262. % \def\subsectionmark#1{}
  263. % \def\subsubsectionmark#1{}
  264. % \def\paragraphmark#1{}
  265. % \def\subparagraphmark#1{}
  266.  
  267. % The value of the counter secnumdepth gives the depth of the
  268. % highest-level sectioning command that is to produce section numbers.
  269. %
  270.  
  271. \setcounter{secnumdepth}{3}
  272.  
  273. % APPENDIX
  274. %
  275. % The \appendix command must do the following:
  276. %    -- reset the section and subsection counters to zero
  277. %    -- redefine the section counter to produce appendix numbers
  278. %    -- redefine the \section command if appendix titles and headings
  279. %       are to look different from section titles and headings.
  280.  
  281. \def\appendix{\par
  282.   \setcounter{section}{0}
  283.   \setcounter{subsection}{0}
  284.   \def\thesection{\Alph{section}}}
  285.  
  286.  
  287. %    ****************************************
  288. %    *                LISTS                 *
  289. %    ****************************************
  290. %
  291.  
  292. % The following commands are used to set the default values for the list
  293. % environment's parameters. See the LaTeX manual for an explanation of
  294. % the meanings of the parameters.  Defaults for the list environment are
  295. % set as follows.  First, \rightmargin, \listparindent and \itemindent
  296. % are set to 0pt.  Then, for a Kth level list, the command \@listK is
  297. % called, where 'K' denotes 'i', 'ii', ... , 'vi'.  (I.e., \@listiii is
  298. % called for a third-level list.)  By convention, \@listK should set
  299. % \leftmargin to \leftmarginK.
  300. %
  301. % For efficiency, level-one list's values are defined at top level, and
  302. % \@listi is defined to set only \leftmargin.
  303.  
  304. \leftmargini 25pt
  305. \leftmarginii 22pt     % > \labelsep + width of '(m)'
  306. \leftmarginiii 18.7pt  % > \labelsep + width of 'vii.'
  307. \leftmarginiv 17pt     % > \labelsep + width of 'M.'
  308. \leftmarginv 10pt
  309. \leftmarginvi 10pt
  310.  
  311. \leftmargin\leftmargini
  312. \labelsep 5pt
  313. \labelwidth\leftmargini\advance\labelwidth-\labelsep
  314. % \parsep 4pt plus 2pt minus 1pt (Removed 9 Jun 87)
  315.  
  316. % \@listI defines top level and \@listi values of
  317. % \leftmargin, \topsep, \parsep, and \itemsep
  318. % (Added 9 Jun 87)
  319. \def\@listI{\leftmargin\leftmargini \parsep 4\p@ plus2\p@ minus\p@
  320. \topsep 8\p@ plus2\p@ minus4\p@
  321. \itemsep 4\p@ plus2\p@ minus\p@}
  322.  
  323. \let\@listi\@listI
  324. \@listi 
  325.  
  326. \def\@listii{\leftmargin\leftmarginii
  327.    \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  328.    \topsep 4\p@ plus2\p@ minus\p@
  329.    \parsep 2\p@ plus\p@ minus\p@
  330.    \itemsep \parsep}
  331.  
  332. \def\@listiii{\leftmargin\leftmarginiii
  333.     \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  334.     \topsep 2\p@ plus\p@ minus\p@ 
  335.     \parsep \z@ \partopsep \p@ plus\z@ minus\p@
  336.     \itemsep \topsep}
  337.  
  338. \def\@listiv{\leftmargin\leftmarginiv
  339.      \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
  340.  
  341. \def\@listv{\leftmargin\leftmarginv
  342.      \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
  343.  
  344. \def\@listvi{\leftmargin\leftmarginvi
  345.      \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
  346.  
  347. \endinput
  348.